package com.zhang.zxx.boot.common.util;

import lombok.experimental.UtilityClass;

import java.util.function.BiFunction;
import java.util.function.DoubleToIntFunction;

/**
 * MyTestUtil:我的测试工具类类
 *
 * @author zhangxiaoxiang
 * @date 2021/11/30
 */
@UtilityClass
public class MyTestUtil {

    /**
     * 2个整数操作成一个整数
     *
     * @param biFunction 表示接受两个参数并产生结果的函数
     * @param a          参数1
     * @param b          参数2
     * @return 结果
     */
    public Integer calculate(BiFunction<Integer, Integer, Integer> biFunction, Integer a, Integer b) {
        return biFunction.apply(a, b);
    }


    /**
     * 把double转int
     *
     * @param doubleToIntFunction 表示接受双值参数并产生整数值结果的函数。 这是Function的double to- int原始特化
     * @param d                   double
     * @return int
     */
    public int getInt(DoubleToIntFunction doubleToIntFunction, double d) {
        return doubleToIntFunction.applyAsInt(d);
    }

    // public static void main(String[] args) {
    //     System.out.println(getInt(Convert::toInt, 45.28));
    // }


}
